/*
 This file is part of Darling.

 Copyright (C) 2021 Lubos Dolezel

 Darling is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 Darling is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with Darling.  If not, see <http://www.gnu.org/licenses/>.
*/


#ifndef _InputMethodKit_H_
#define _InputMethodKit_H_

#import <Foundation/Foundation.h>

#import <InputMethodKit/IMKCandidate.h>
#import <InputMethodKit/IMKCandidateControllerDelegate.h>
#import <InputMethodKit/IMKCandidateEngine.h>
#import <InputMethodKit/IMKCandidateIndexing.h>
#import <InputMethodKit/IMKCandidateMenu.h>
#import <InputMethodKit/IMKCandidateMenuDelegate.h>
#import <InputMethodKit/IMKCandidateSelectionViewDelegate.h>
#import <InputMethodKit/IMKCandidatesDelegate.h>
#import <InputMethodKit/IMKExtensionContextProtocol.h>
#import <InputMethodKit/IMKExtensionMainInit.h>
#import <InputMethodKit/IMKHostExtensionContextProtocol.h>
#import <InputMethodKit/IMKInputMethod.h>
#import <InputMethodKit/IMKKeyboard.h>
#import <InputMethodKit/IMKKeyboardServiceDelegate.h>
#import <InputMethodKit/IMKLaunchAgentXPCEndpointRegistry.h>
#import <InputMethodKit/IMKMacSpellChecker.h>
#import <InputMethodKit/IMKMouseHandling.h>
#import <InputMethodKit/IMKRemoteExtensionContextProtocol.h>
#import <InputMethodKit/IMKServerProxy.h>
#import <InputMethodKit/IMKSimulatorDelegate.h>
#import <InputMethodKit/IMKStateSetting.h>
#import <InputMethodKit/IMKTextDocument.h>
#import <InputMethodKit/IMKTextInput.h>
#import <InputMethodKit/IMKTextInputTouchBarHostViewControllerProtocol.h>
#import <InputMethodKit/IMKTextInput_AutoCorrection.h>
#import <InputMethodKit/IMKTextInput_Full.h>
#import <InputMethodKit/IMKTextInput_FunctionRowUI.h>
#import <InputMethodKit/IMKTextInput_NSAppearance.h>
#import <InputMethodKit/IMKUIAbstractCandidateController.h>
#import <InputMethodKit/IMKUICandidateAccessibilityDelegate.h>
#import <InputMethodKit/IMKUICandidateAccessibilityTarget.h>
#import <InputMethodKit/IMKUICandidateItemViewHandling.h>
#import <InputMethodKit/IMKUICandidateLayoutDelegate.h>
#import <InputMethodKit/IMKUICandidateListViewState.h>
#import <InputMethodKit/IMKUICandidateSortingBarDelegate.h>
#import <InputMethodKit/IMKUICandidateStepperViewDelegate.h>
#import <InputMethodKit/IMKUIDelegate.h>
#import <InputMethodKit/IMKUnicodeTextInput.h>
#import <InputMethodKit/IMKXPCServerProxy.h>
#import <InputMethodKit/IMKXPCSupport.h>
#import <InputMethodKit/IMTSMSupport.h>
#import <InputMethodKit/NSAccessibilityButton.h>
#import <InputMethodKit/NSAccessibilityElement.h>
#import <InputMethodKit/NSAccessibilityGroup.h>
#import <InputMethodKit/NSAccessibilityList.h>
#import <InputMethodKit/NSAccessibilityTable.h>
#import <InputMethodKit/NSCandidateBarFunctionRowButtonTouchEvents.h>
#import <InputMethodKit/NSCorrectionPanelProtocol.h>
#import <InputMethodKit/NSExtensionRequestHandling.h>
#import <InputMethodKit/NSScrubberDelegate.h>
#import <InputMethodKit/NSWindowDelegate.h>
#import <InputMethodKit/PKModularService.h>
#import <InputMethodKit/TIPropertyProvider.h>
#import <InputMethodKit/WebFrameLoadDelegate.h>
#import <InputMethodKit/IMKUICandidateController.h>
#import <InputMethodKit/IMKUIView.h>
#import <InputMethodKit/IMKUITopView.h>
#import <InputMethodKit/IMKTextDocumentTraits.h>
#import <InputMethodKit/IMKDocumentContent.h>
#import <InputMethodKit/IMKPhoneNumberInputMethod.h>
#import <InputMethodKit/IMKExtensionMainThreadInit.h>
#import <InputMethodKit/IMKCandidateController.h>
#import <InputMethodKit/IMKKey.h>
#import <InputMethodKit/IMKKeyboardDescriptor.h>
#import <InputMethodKit/IMKKeyboardState.h>
#import <InputMethodKit/IMKKeyboard.h>
#import <InputMethodKit/IMKCandidateArrowView.h>
#import <InputMethodKit/IMKCandidateGroupViewUnit.h>
#import <InputMethodKit/IMKCandidateGroupView.h>
#import <InputMethodKit/IMKCandidateSelectionViewButton.h>
#import <InputMethodKit/IMKCandidateSelectionView.h>
#import <InputMethodKit/IMKCandidateStepperAccessoryImageView.h>
#import <InputMethodKit/IMKCandidateStepperView.h>
#import <InputMethodKit/IMKTruncatedTextField.h>
#import <InputMethodKit/IMKTextFieldCell.h>
#import <InputMethodKit/IMKTextField.h>
#import <InputMethodKit/IMKClipView.h>
#import <InputMethodKit/IMKExtensionHostContext.h>
#import <InputMethodKit/IMKSimulatorXCUICandidateProxy.h>
#import <InputMethodKit/IMKUICandidateBarCorrectionPanelController.h>
#import <InputMethodKit/IMKUICandidateIterativeLayout.h>
#import <InputMethodKit/IMKUISingleCandidateListView.h>
#import <InputMethodKit/IMKUITextField.h>
#import <InputMethodKit/IMKUIWindowContentEmptyView.h>
#import <InputMethodKit/IMKUIWindowContentView.h>
#import <InputMethodKit/IMKUIVisualEffectView.h>
#import <InputMethodKit/IMKUIPanel.h>
#import <InputMethodKit/IMKCandidatePositionedUIString.h>
#import <InputMethodKit/IMKCandidateDisplayArray.h>
#import <InputMethodKit/IMKUICandidateSteppingWindowController.h>
#import <InputMethodKit/IMKUICandidateAccessibilityElement.h>
#import <InputMethodKit/IMKUICandidatePressAndHoldWindowController.h>
#import <InputMethodKit/IMKUIWindowBasedCandidateController.h>
#import <InputMethodKit/IMKSimulatorWindowGrabber.h>
#import <InputMethodKit/IMKAbstractInputMethod.h>
#import <InputMethodKit/IMKVerbatimInputMethod.h>
#import <InputMethodKit/IMKCandidateCanvas.h>
#import <InputMethodKit/IMKUIScrollView.h>
#import <InputMethodKit/IMKUICandidateListView.h>
#import <InputMethodKit/IMKXPCServiceInfoDictionary.h>
#import <InputMethodKit/IMKDocumentView.h>
#import <InputMethodKit/IMKCandidateListDictionary.h>
#import <InputMethodKit/IMKInputControllerPrivate.h>
#import <InputMethodKit/IMKInputController.h>
#import <InputMethodKit/IMKUICandidateSortingBarButton.h>
#import <InputMethodKit/IMKUICandidateSortingBarView.h>
#import <InputMethodKit/IMKUICandidateLineLayoutIterator.h>
#import <InputMethodKit/IMKSimulatorUIOrientationButton.h>
#import <InputMethodKit/IMKSimulatorUIDirectionButton.h>
#import <InputMethodKit/IMKSimulatorSpotlightButton.h>
#import <InputMethodKit/IMKSimulatorPreferencesBar.h>
#import <InputMethodKit/IMKSimulatorWindowContentView.h>
#import <InputMethodKit/IMKSimulatorWindow.h>
#import <InputMethodKit/IMKCompositionResult.h>
#import <InputMethodKit/IMKUIProperties.h>
#import <InputMethodKit/IPMDEventState.h>
#import <InputMethodKit/IMKXPCCompatibilityDOProxyInterposer.h>
#import <InputMethodKit/IMKServerInvocationSentinel.h>
#import <InputMethodKit/IMKServerXPCInvocation.h>
#import <InputMethodKit/IPMDServerClientWrapper.h>
#import <InputMethodKit/IMKServerPrivate.h>
#import <InputMethodKit/IMKServer.h>
#import <InputMethodKit/IMKSimulatorApplication.h>
#import <InputMethodKit/IMKUICandidateGroupViewItemView.h>
#import <InputMethodKit/IMKUICandidateGroupViewItem.h>
#import <InputMethodKit/IMKUICandidateGroupView.h>
#import <InputMethodKit/IMKUICandidateHorizontalController.h>
#import <InputMethodKit/IMKUICandidateHorizontalScrubberController.h>
#import <InputMethodKit/IMKCandidatesPrivate.h>
#import <InputMethodKit/IMKCandidates.h>
#import <InputMethodKit/IMKSimulatorTextView.h>
#import <InputMethodKit/IMKCandidateUnitViewContentView.h>
#import <InputMethodKit/IMKCandidateUnitView.h>
#import <InputMethodKit/IMKCandidateSecondaryUnitView.h>
#import <InputMethodKit/IMKAppleSpellCandidateEngine.h>
#import <InputMethodKit/IMKCandidatePickerInputMethod.h>
#import <InputMethodKit/IMKSimulatorDummyDelegate.h>
#import <InputMethodKit/IMKSimulatorController.h>
#import <InputMethodKit/IMKLog.h>
#import <InputMethodKit/IMKCandidateView.h>
#import <InputMethodKit/IMKCandidateUIElement.h>
#import <InputMethodKit/IMKUICandidateBarView.h>
#import <InputMethodKit/IMKExtensionServiceContext.h>
#import <InputMethodKit/IMKNSApplication.h>
#import <InputMethodKit/IMKExtensionService_Subsystem.h>
#import <InputMethodKit/IMKUICandidateVerticalWindowController.h>
#import <InputMethodKit/IMKLayoutLine.h>
#import <InputMethodKit/IMKLayout.h>
#import <InputMethodKit/IMKDefinitionToLayoutConstraint.h>
#import <InputMethodKit/IMKDefinitionToLayoutController.h>
#import <InputMethodKit/IMKUICandidateVerticalController.h>
#import <InputMethodKit/IMKUICandidatePredictionVerticalController.h>
#import <InputMethodKit/IMKUICandidateLargePredictionVerticalController.h>
#import <InputMethodKit/IMKUICandidateVerticalScrubberController.h>
#import <InputMethodKit/IMKAutoPeriodInputMethod.h>
#import <InputMethodKit/IMKTextInputTextDocumentAdaptor.h>
#import <InputMethodKit/IMKAutoCapitalizationInputMethod.h>
#import <InputMethodKit/IMKUIInformation.h>
#import <InputMethodKit/IMKExtensionIM.h>
#import <InputMethodKit/IMKUICandidateItemView.h>
#import <InputMethodKit/IMKPreferences.h>
#import <InputMethodKit/IMKUICandidateWindowController.h>
#import <InputMethodKit/IMKCandidateEngine.h>
#import <InputMethodKit/IMKCandidateBasedInputController.h>
#import <InputMethodKit/IMKUICandidateLayoutTraits.h>
#import <InputMethodKit/IMKCandidateControllerBasedCandidateMenu.h>
#import <InputMethodKit/IMKCandidateLayoutUnit.h>
#import <InputMethodKit/IMKUICandidateBarListView.h>
#import <InputMethodKit/IMKSimulatorInputModeSelector.h>
#import <InputMethodKit/IMKCurrencyInputMethod.h>
#import <InputMethodKit/IMKSimulatorInputClient.h>
#import <InputMethodKit/IMKMultitapInputMethod.h>
#import <InputMethodKit/IMKWindowController.h>
#import <InputMethodKit/IMKContentView.h>
#import <InputMethodKit/IMKCandidateWindow.h>
#import <InputMethodKit/IMKCandidateLineView.h>
#import <InputMethodKit/IMKCandidateDefinitionUnit.h>
#import <InputMethodKit/IMKUICandidateCollectionDocumentView.h>
#import <InputMethodKit/IMKDebugging.h>
#import <InputMethodKit/IMKUICandidateInformationController.h>
#import <InputMethodKit/IMKUICandidateTouchBarController.h>
#import <InputMethodKit/IMKUICandidateFunctionKeyTouchBarController.h>
#import <InputMethodKit/IMKUICandidateTrackpadHandwritingTouchBarController.h>
#import <InputMethodKit/IMKCandidateUIStringProperties.h>
#import <InputMethodKit/IMKCandidateUIProperties.h>
#import <InputMethodKit/IMKCandidatePopoverController.h>
#import <InputMethodKit/IMKUIInformationWindowController.h>
#import <InputMethodKit/IMKAbstractTextDocument.h>
#import <InputMethodKit/IMKTextDocument.h>
#import <InputMethodKit/IMKLayoutToViewController.h>
#import <InputMethodKit/IMKKeyboardInputController.h>
#import <InputMethodKit/IMKUICandidateTouchBarCandidateListItemController.h>
#import <InputMethodKit/IMKSimulatorPasteboardValueDictionary.h>
#import <InputMethodKit/IMKKeyboardLayoutInputMethod.h>
#import <InputMethodKit/IMKObserver.h>
#import <InputMethodKit/IMKTextDocumentTextInputAdaptor.h>
#import <InputMethodKit/IMKNSXPCListener.h>
#import <InputMethodKit/IMKUICandidateWindowPositionController.h>
#import <InputMethodKit/IMKEnclosingCharactersInputMethod.h>
#import <InputMethodKit/IMKCandidate.h>
#import <InputMethodKit/IMKCandidateList.h>
#import <InputMethodKit/IMKTSMInputSourceHelper.h>
#import <InputMethodKit/IMKUICandidateHorizontalExpandableController.h>
#import <InputMethodKit/IMKCandidateUnitViewTextContainer.h>
#import <InputMethodKit/IMKKeyboardService.h>
#import <InputMethodKit/IMKUICandidateTouchBarLineLayout.h>
#import <InputMethodKit/IMKTouchBarUICandidate.h>
#import <InputMethodKit/IMKUIScrubberView.h>
#import <InputMethodKit/IMKUICandidateTouchBarItemController.h>
#import <InputMethodKit/IMKTextInputFunctionRowItemServiceViewController.h>
#import <InputMethodKit/IMKUICandidateStepperAccessoryImageView.h>
#import <InputMethodKit/IMKUICandidateStepperView.h>
#import <InputMethodKit/IMKCandidateData.h>
#import <InputMethodKit/IMKUIAbstractCandidateLayout.h>
#import <InputMethodKit/IMKUICandidateItemLayout.h>
#import <InputMethodKit/IMKUICandidateVerticallyAlignedController.h>
#import <InputMethodKit/IMKUICandidatePredictionVerticallyAlignedController.h>
#import <InputMethodKit/IMKUICandidateLargePredictionVerticallyAlignedController.h>
#import <InputMethodKit/IMKUICandidateVerticallyAlignedScrubberController.h>
#import <InputMethodKit/IMKInputContext.h>
#import <InputMethodKit/IMKCandidateWindowPositioning.h>
#import <InputMethodKit/IMKUIPanelMask.h>
#import <InputMethodKit/IMKUICorneredPanelMask.h>
#import <InputMethodKit/IMKUISpeechBalloonMask.h>
#import <InputMethodKit/IMKUICandidateLineLayoutEntry.h>
#import <InputMethodKit/IMKUICandidateLineLayout.h>
#import <InputMethodKit/IMKCandidateNavigationController.h>
#import <InputMethodKit/IMKUICandidateHorizontalSteppableController.h>
#import <InputMethodKit/IMKUICandidateTextContainer.h>
#import <InputMethodKit/IMKUICandidate.h>
#import <InputMethodKit/IMKSimulatorKeyboardInterpreter.h>
#import <InputMethodKit/IMKUIFastTrackVerticalLayout.h>
#import <InputMethodKit/IMKCandidateUIStringSizeCache.h>
#import <InputMethodKit/IMKCandidateUIString.h>
#import <InputMethodKit/IMKUICandidateTouchBarOnScreenBridge.h>
#import <InputMethodKit/IMKUIExpandableCandidateWindowController.h>
#import <InputMethodKit/IMKUICandidateArrowButton.h>
#import <InputMethodKit/IMKDoubleSpaceEventHandler.h>
#import <InputMethodKit/IMKUITriCandidateLayout.h>
#import <InputMethodKit/IMKUICandidateLayout.h>

void* IMKCandidateControllerUITypeIsWindowBacked(void);
void* IMKContainsShortcutModifier(void);
void* IMKIsHighSurrogate(void);
void* IMKIsLowSurrogate(void);
void* IMKIsNumber(void);
void* IMKIsOnBigEndianSystem(void);
void* IMKIsSentenceEndingCharacter(void);
void* IMKIsSurrogate(void);
void* IMKKeyModifiersFromNSModifierFlags(void);
void* IMKLayoutCandidatePositionIsValid(void);
void* IMKSentenceEndingCharacterSet(void);
void* IMKSimulatorCandidateProxies(void);
void* IMKSimulatorCandidateSurfaces(void);
void* IMKSimulatorCandidateWindowIsVisible(void);
void* IMKSimulatorCandidateWindowSelectedSurface(void);
void* IMKSimulatorCandidateWindowTopVisibleLine(void);
void* IMKSimulatorCarbonModifiersForNSModifiers(void);
void* IMKSimulatorControlKeyModifiers(void);
void* IMKSimulatorDictionaryFromAccessibilityString(void);
void* IMKSimulatorGroupedCandidateProxies(void);
void* IMKSimulatorGroupedCandidateSurfaces(void);
void* IMKSimulatorMainInit(void);
void* IMKSimulatorMarkedRange(void);
void* IMKSimulatorMarkedText(void);
void* IMKSimulatorPreferencesClear(void);
void* IMKSimulatorPreferencesSetValue(void);
void* IMKSimulatorSelectedRange(void);
void* IMKSimulatorSelectedText(void);
void* IMKSimulatorStringValue(void);
void* IMKSimulatorTouchBarCandidateSurfaces(void);
void* IMKSimulatorTouchBarCandidateWindowSelectedSurface(void);
void* IMKUIBackingAwareCeil(void);
void* IMKUIBackingAwareFloor(void);
void* IMKUICandidatePanelTypeSupportsAlignment(void);
void* IMKUILocationHintString(void);
void* IMKUIOppositeLocationHint(void);
void* IMKUIPanelTypeIsScrubber(void);
void* IMKUIPanelTypeIsTouchBar(void);
void* IMKUIPanelTypeToString(void);
void* IMKUTF32StringEncoding(void);
void* IMKUnsignedSubtract(void);
void* IMKWindowCategoryFromType(void);
void* NSModifierFlagsFromIMKKeyModifiers(void);
void* NSRectRoundedSize(void);
void* NSSizeAddSize(void);
void* NSStringFromCandidateArray(void);
void* NSStringFromIMKCandidateWindowType(void);
void* NSZeroOriginRect(void);
void* NSZeroOriginRectFromSize(void);
void* asl_init(void);
void* asl_stop(void);
void* isEqualWithNil(void);
void* nameFor(void);
void* server_client_ipc_signpost_log(void);
void* server_perf_signpost_log(void);
void* server_ui_signpost_log(void);

#endif
